Network accessible computing systems, e.g., servers in a data center, provide various services over a network (e.g., the Internet). These systems are sometimes referred to as “cloud based” or “in the cloud” in reference to their off-premises location within the network (which is often depicted in figures as a cloud). Cloud-based services may be hosted on servers owned or managed by a third-party, e.g., under a tenancy or co-tenancy arrangement. The third-party providing the hardware (or time on shared hardware) may be referred to a cloud-services provider.
Cloud-based services may interact with each other. For example, a front-end (public-facing) interface server (such as a web host) may rely on a back-end database server or content host. These back-end services often reside in the same autonomous system (“AS”) network as the front end services, eliminating any security or infrastructure barriers. However, provisioning services on a third-party cloud infrastructure may require administrative configuration, additional costs from the cloud-services provider, and risk of disruption to an existing services deployment. These problems can make it prohibitive to test new services or new versions of services in the cloud.
However, testing new services or new versions of services on a local computing system (that is, one not in the cloud) may also be difficult. For example, if the service is part of a deployment interacting with other services, then the other services also need to interact with the test version. This could be achieved by recreating all of the other services on a test platform, although this (too) may be prohibitively complex and/or inadequate for testing production-realistic scenarios.
These and other technical problems are addressed by the subject matter described.